package sv.gob.mh.dgii.model;
// Generated Oct 8, 2008 12:02:58 PM by Hibernate Tools 3.2.0.CR1


import java.util.Date;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

/**
 * CcEstadoMargina generated by hbm2java
 */
@Entity
@Table(name="CC_ESTADO_MARGINA"
    ,schema="CTACTE"
    , uniqueConstraints = @UniqueConstraint(columnNames={"NIT", "N_CORRELATIVO","TIPO_MARGINACION"}) 
)
public class CcEstadoMargina  implements java.io.Serializable {


     /**
	 * 
	 */
	private static final long serialVersionUID = -7483886975997648129L;
	private CcEstadoMarginaId id;
     private TbEstado tbEstado;
     private String smarginacion;
     private String cusuario;
     private Date fhmargina;
     private String smarginacionContrib;
     private Integer nprocesadoWeb;
     private Date fhprocesadoWeb;
     private String cusuarioModifica;
     private Long csolTecnico;
     private Integer bactiva = 1;

    public CcEstadoMargina() {
    }

	
    public CcEstadoMargina(CcEstadoMarginaId id, String smarginacion, String cusuario, Date fhmargina) {
        this.id = id;
        this.smarginacion = smarginacion;
        this.cusuario = cusuario;
        this.fhmargina = fhmargina;
    }
    public CcEstadoMargina(CcEstadoMarginaId id, TbEstado tbEstado, String smarginacion, String cusuario, Date fhmargina, String smarginacionContrib, Integer nprocesadoWeb, Date fhprocesadoWeb, String cusuarioModifica, Long csolTecnico) {
       this.id = id;
       this.tbEstado = tbEstado;
       this.smarginacion = smarginacion;
       this.cusuario = cusuario;
       this.fhmargina = fhmargina;
       this.smarginacionContrib = smarginacionContrib;
       this.nprocesadoWeb = nprocesadoWeb;
       this.fhprocesadoWeb = fhprocesadoWeb;
       this.cusuarioModifica = cusuarioModifica;
       this.csolTecnico = csolTecnico;
    }
    
    @EmbeddedId


    @AttributeOverrides( {
       @AttributeOverride(name="nit", column=@Column(name="NIT", nullable=false, length=14) ), 
       @AttributeOverride(name="ncorrelativo", column=@Column(name="N_CORRELATIVO", nullable=false, precision=5, scale=0) ), 
       @AttributeOverride(name="tipomarginacion", column=@Column(name="TIPO_MARGINACION", nullable=false, length=15) ) } )
   public CcEstadoMarginaId getId() {
        return this.id;
    }
    
    public void setId(CcEstadoMarginaId id) {
        this.id = id;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="C_ESTADO")
    public TbEstado getTbEstado() {
        return this.tbEstado;
    }
    
    public void setTbEstado(TbEstado tbEstado) {
        this.tbEstado = tbEstado;
    }
    
    @Column(name="S_MARGINACION", nullable=false, length=3000)
    public String getSmarginacion() {
        return this.smarginacion;
    }
    
    public void setSmarginacion(String smarginacion) {
        this.smarginacion = smarginacion;
    }
    
    @Column(name="C_USUARIO", nullable=false, length=30)
    public String getCusuario() {
        return this.cusuario;
    }
    
    public void setCusuario(String cusuario) {
        this.cusuario = cusuario;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="FH_MARGINA", nullable=false )
    public Date getFhmargina() {
        return this.fhmargina;
    }
    
    public void setFhmargina(Date fhmargina) {
        this.fhmargina = fhmargina;
    }
    
    @Column(name="S_MARGINACION_CONTRIB", length=3000)
    public String getSmarginacionContrib() {
        return this.smarginacionContrib;
    }
    
    public void setSmarginacionContrib(String smarginacionContrib) {
        this.smarginacionContrib = smarginacionContrib;
    }
    
    @Column(name="N_PROCESADO_WEB", precision=1, scale=0)
    public Integer getNprocesadoWeb() {
        return this.nprocesadoWeb;
    }
    
    public void setNprocesadoWeb(Integer nprocesadoWeb) {
        this.nprocesadoWeb = nprocesadoWeb;
    }
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="FH_PROCESADO_WEB" )
    public Date getFhprocesadoWeb() {
        return this.fhprocesadoWeb;
    }
    
    public void setFhprocesadoWeb(Date fhprocesadoWeb) {
        this.fhprocesadoWeb = fhprocesadoWeb;
    }
    
    @Column(name="C_USUARIO_MODIFICA", length=30)
    public String getCusuarioModifica() {
        return this.cusuarioModifica;
    }
    
    public void setCusuarioModifica(String cusuarioModifica) {
        this.cusuarioModifica = cusuarioModifica;
    }
    
    @Column(name="C_SOL_TECNICO", precision=10, scale=0)
    public Long getCsolTecnico() {
        return this.csolTecnico;
    }
    
    public void setCsolTecnico(Long csolTecnico) {
        this.csolTecnico = csolTecnico;
    }


	/**
	 * @return the bactiva
	 */
    @Column(name="B_ACTIVA", precision=1, scale=0)
	public Integer getBactiva() {
		return bactiva;
	}


	/**
	 * @param bactiva the bactiva to set
	 */
	public void setBactiva(Integer bactiva) {
		this.bactiva = bactiva;
	}
    
    




}


